home *** CD-ROM | disk | FTP | other *** search
/ Aminet 24 / Aminet 24 (1998)(GTI - Schatztruhe)[!][Apr 1998].iso / Aminet / comm / mail / Mutt089src.lha / Mutt-0.89i-AMIGA / src / mailbox.h < prev    next >
Text File  |  1998-01-28  |  2KB  |  58 lines

  1. /*
  2.  * Copyright (C) 1996-8 Michael R. Elkins <me@cs.hmc.edu>
  3.  * 
  4.  *     This program is free software; you can redistribute it and/or modify
  5.  *     it under the terms of the GNU General Public License as published by
  6.  *     the Free Software Foundation; either version 2 of the License, or
  7.  *     (at your option) any later version.
  8.  * 
  9.  *     This program is distributed in the hope that it will be useful,
  10.  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12.  *     GNU General Public License for more details.
  13.  * 
  14.  *     You should have received a copy of the GNU General Public License
  15.  *     along with this program; if not, write to the Free Software
  16.  *     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  17.  */ 
  18.  
  19. /* flags for mutt_open_mailbox() */
  20. #define M_NOSORT    (1<<0) /* do not sort the mailbox after opening it */
  21. #define M_APPEND    (1<<1) /* open mailbox for appending messages */
  22. #define M_READONLY    (1<<2) /* open in read-only mode */
  23. #define M_QUIET        (1<<3) /* do not print any messages */
  24.  
  25. /* mx_open_new_message() */
  26. #define M_ADD_FROM    1    /* add a From_ line */
  27.  
  28. /* return values from mx_check_mailbox() */
  29. enum
  30. {
  31.   M_NEW_MAIL = 1,    /* new mail received in mailbox */
  32.   M_REOPENED        /* mailbox was reopened */
  33. };
  34.  
  35. typedef struct
  36. {
  37.   FILE *fp;    /* pointer to the message data */
  38. #ifdef USE_IMAP
  39.   char *path;    /* path to temp file */
  40. #endif /* USE_IMAP */
  41.   short magic;    /* type of mailbox this message belongs to */
  42.   short write;    /* nonzero if message is open for writing */
  43. } MESSAGE;
  44.  
  45. CONTEXT *mx_open_mailbox (const char *, int, CONTEXT *);
  46.  
  47. MESSAGE *mx_open_message (CONTEXT *, int);
  48. MESSAGE *mx_open_new_message (CONTEXT *, HEADER *, int);
  49.  
  50. void mx_fastclose_mailbox (CONTEXT *);
  51.  
  52. int mx_close_mailbox (CONTEXT *);
  53. int mx_sync_mailbox (CONTEXT *);
  54. int mx_close_message (MESSAGE **msg);
  55. int mx_get_magic (const char *);
  56. int mx_set_magic (const char *);
  57. int mx_check_mailbox (CONTEXT *, int *);
  58.